# coding = utf-8

""" 1.首先要有账号注册，注册完成后写入文本中。
	2.注册过程中如果用户名重复，要提示用户名已被使用。
	3.当用户登录时，如果用户名错误，提示用户名不存在。
	4.当密码登陆错误时，提示密码输入有误请重新输入。
	5.在密码重试3次失败后，终止登陆。"""

import pickle


print("""欢迎登陆京峰教育，如果已经拥有会员请直接登陆，如果没有请进行注册.
1.用户注册。
2.用户登录。""")
numbers = input("""请输入数字：""")

def users_login():
	data_user_pass_load = open("data_user_pass.txt","rb")
	try:
		data_user_pass_data = pickle.load(data_user_pass_load)
	except EOFError:
		return print("请先进行用户注册。")

	data_user_pass_load.close()
	couters = 0
	users = input("请输入用户名：")
	while couters <= 2:
		if users in data_user_pass_data.keys():
			passwords = input("请输入密码：")
			if passwords == data_user_pass_data[users]:
				print("您已经正确登陆，欢迎使用京峰教育系统。")
				return
			elif passwords != data_user_pass_data[users]:
				if couters == 2:
					return print("密码三次错误，退出登录")
				print("您的密码有误，请重新输入。")
				couters += 1
		elif users not in data_user_pass_data.keys():
			print("用户名不存在，请重新输入。")
			users = input("请输入用户名：")
			couters += 1

if numbers == "1":
	users = input("请输入注册用户名：")
	passwords = input("请输入注册密码：")
	try:
		data_user_pass_pk = open("data_user_pass.txt","rb")
		data_user_yanzheng = pickle.load(data_user_pass_pk)
		data_user_pass_pk.close()
	except:
		data_user_yanzheng = {}
	if data_user_yanzheng != {}:
		if users in data_user_yanzheng.keys():
			print("用户名已经被使用，请重新输入。")
		elif users not in data_user_yanzheng.keys():
			data_user_yanzheng.update({users:passwords})
			print(data_user_yanzheng)
			data_user_pass_pk = open("data_user_pass.txt","wb")
			pickle.dump(data_user_yanzheng,data_user_pass_pk)
			data_user_pass_pk.close()
			print("注册成功，请登录.")
			print("请登录：")
			users_login()

	elif data_user_yanzheng == {}:
		data_user_yanzheng[users]=passwords
		data_user_pass_pk = open("data_user_pass.txt","wb")
		pickle.dump(data_user_yanzheng,data_user_pass_pk)
		data_user_pass_pk.close()
		print("注册成功，请登录.")
		print("请登录：")
		users_login()
		
elif numbers == "2":
	print("请登录：")
	users_login()






